最近搞了一台 Mac Mini 来当服务器用,之前觉得 macOS 基于 Unix,那用起来应该和 Linux 差不多,上手就能跑。真用起来才发现,坑还是有一些的。记录一下遇到的主要问题。
休眠与节能设置
Mac Mini 默认的节能策略和台式机 Linux 很不一样。屏幕关闭后一段时间,系统会自动进入休眠(Sleep)。休眠状态下网络连接会断,SSH 连不上,服务全部下线。
解决方法分两步:
系统设置里关掉自动休眠:在”系统设置”,将搜到的与”休眠”有关的选项全关掉。关键词也可能是”节能”或”电池”。
配合防休眠软件:即使关了系统休眠,某些场景下系统仍可能因为其他原因进入睡眠。建议配合 App Center 里的防休眠软件(比如 KeepingYouAwake、Amphetamine)来保持唤醒状态。这些工具可以在托盘区运行,阻止系统进入休眠。
如果不做这两步,服务器跑着跑着就失联了,相当头疼。
Xcode 依赖与系统版本
这是 macOS 和 Linux 最大的区别之一。很多命令行工具的安装都依赖 Xcode Command Line Tools,而 Xcode 本身需要通过 Mac App Store 获取。
这里有个很蛋疼的问题:如果系统版本不是最新的,可能无法从 App Store 下载/更新 Xcode。所以到手 Mac Mini 后,第一件事应该是升级到最新版 macOS。
另外,这一切都依赖 Apple ID 登录。虽然 macOS 不强制将在线账户与本地账户绑定(比 Windows 好一些),但下载 Xcode 时必须登录 App Store。也就是说,一台 Mac 服务器需要一个 Apple ID,这在初始化配置时容易被忽略。
GUI 交互依赖
macOS 虽然是类 Unix 系统,但很多关键操作并不能纯命令行完成。比如安装 Hermes。
Hermes 的安装脚本在执行过程中会尝试安装 python3 等依赖,但确认安装的步骤不会出现在终端里,而是弹出一个图形界面的确认对话框。如果没有接显示器,这个对话框会一直等着,安装流程就卡死了。
类似的情况还有:
- 首次运行某些需要权限的工具时,系统会弹出安全提示框。
- 在前面提到的登录 Apple ID 和下载 Xcode 时,也需要图形界面。
- 系统更新有时也会弹出 GUI 确认。
所以初期配置阶段,最好还是接上显示器操作,等基本环境搭好后再拔掉显示器无头运行。
总结
Mac Mini 确实可以作为服务器使用,但 macOS 本质上还是一个桌面系统,自由度介于 Windows 和 Linux 之间。如果你习惯 Linux 服务器的纯命令行管理方式,需要做好心理准备:休眠要手动处理,软件依赖有 Apple 生态的壁垒,初始配置绕不开图形界面。
但好处也很明显:功耗低、体积小、噪音几乎没有,作为在家运行的服务器来说硬件素质很不错。只要跨过上面这些坑,它还是一个挺稳定的服务器平台的。